package com.virgo.demo.cms.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.virgo.common.entity.ListDataVo;
import com.virgo.demo.cms.domain.ArticleDo;
import com.virgo.demo.cms.domain.bo.ArticleBo;
import com.virgo.demo.cms.domain.vo.ArticleInfoVo;
import com.virgo.demo.cms.domain.vo.ArticleListVo;
import jakarta.servlet.http.HttpServletRequest;

public interface ArticleService extends IService<ArticleDo> {

	/**
	 * 编辑文章
	 * @param articleBo ArticleBo
	 */
	void saveArticle(ArticleBo articleBo);

	/**
	 * 修改状态
	 * @param id Long
	 * @param status Long
	 */
	void updateStatus(Long id, Integer status);

	/**
	 * 删除文章
	 * @param ids String
	 */
	void deleteArticle(String ids);

	/**
	 * 文章详情
	 * @param id Long
	 * @return ArticleInfoVo
	 */
	ArticleInfoVo findInfo(Long id);

	/**
	 * 文章列表
	 * @param request HttpServletRequest
	 * @return ListDataVo<ArticleListVo>
	 */
	ListDataVo<ArticleListVo> findList(HttpServletRequest request);
}